package com.ruoyi.app.domain.bo;

import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.*;

import java.util.Date;

import java.math.BigDecimal;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 充值订单业务对象 app_sales_order
 *
 * @author heise
 * @date 2025-06-28
 */

@Data
@EqualsAndHashCode(callSuper = true)
public class AppSalesOrderBo extends BaseEntity {

    /**
     * ID
     */
    @NotNull(message = "ID不能为空", groups = { EditGroup.class })
    private Long salesOrderId;

    /**
     * 用户ID
     */
    private Long userId;

    /**
     * 订单号
     */
    private String orderNo;

    private String transactionOrderNo;

    /**
     * 充值价格
     */
    @NotNull(message = "充值数量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal orderPrice;

    /**
     * 充值到账数量
     */
    private BigDecimal orderNumber;

    /**
     * 支付状态(0=未支付  1=已支付,2=已完成)
     */
    private String status;

    /**
     * 支付方式
     */
    private String payType;

    /**
     * 合同签名
     */
    @NotBlank(message = "合同签名不能为空", groups = { AddGroup.class, EditGroup.class })
    private String orderSign;

    /**
     * 备注
     */
    private String remark;
}
